﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Regra;
using Dados.Mappers;

namespace CustomizacaoChamp.UI.Cadastro
{
    public partial class CadCategoria : Form
    {
        #region Construtor

        public CadCategoria()
        {
            InitializeComponent();
        }

        #endregion

        #region Eventos

        private void CadCategoria_Load(object sender, EventArgs e)
        {
            this.AtribuirIdCampo();
        }

        private void btnLimpar_Click(object sender, EventArgs e)
        {
            this.txtNome.Text = string.Empty;
        }

        private void btnCancelar_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void btnSalvar_Click(object sender, EventArgs e)
        {
            Regra.RegraCategoria rCategoria = new RegraCategoria();
            rCategoria.SalvarIncluirDadosXml(this.RecuperarDadosCategoria());
        }

        #endregion

        #region Metodos

        private void AtribuirIdCampo()
        {
            RegraCategoria rCategoria = null;
            int id = 0;
            try
            {
                rCategoria = new RegraCategoria();
                id = rCategoria.BuscarIdMaximoCategoria();
                id++;
                this.txtId.Text = id.ToString();
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                rCategoria = null;
            }
        }

        private CategoriaChampion RecuperarDadosCategoria()
        {
            CategoriaChampion retorno = new CategoriaChampion();
            try
            {
                retorno.Id = Convert.ToInt32(this.txtId.Text);
                retorno.Nome = this.txtNome.Text.Trim();
                return retorno;
            }
            catch (Exception ex)
            {
                throw ex;
            }

        }

        #endregion
    }
}